查看原文
其他

比特币史话·87 | 随机(1): 真伪随机数

刘教链 刘教链 2023-01-30

(罗纳德·海纳,美国经济学家。图片来源于网络)
前情回顾:
比特币史话·82 | 有容乃大(6): 二层支付网络
比特币史话·83 | 压缩(1): 默克尔树
比特币史话·84 | 压缩(2): 装到手机里
比特币史话·85 | 压缩(3): 植树造林
比特币史话·86 | 压缩(4): 布隆过滤器

正文:

“任何考虑使用算数方法生成随机数的人,显然,都是有罪的。”——约翰·冯·诺伊曼(John von Neumann),1951。

现代计算机架构的发明者冯·诺伊曼的这句话,被美国计算机科学家、1974年图灵奖获得者高德纳(Donald E. Knuth)写在了他的经典巨著《计算机程序设计艺术》(The Art of Computer Programming,缩写TAOCP)第二卷“不完全数值计算算法”第三章“随机数”的开头。

顾名思义,随机数就是具有随机性的数字。那么,什么是随机性呢?

一个人如果觉得自己搞懂了随机性,那么大概率这个人误解了随机性。爱因斯坦不相信上帝会掷骰子。释迦牟尼不相信这世间并没有因果。炒股的股民、炒币的币民也总觉得自己能够把握股价、币价的波动。量子力学的测不准原理却告诫我们,微观粒子的位置和速度无法同时精准测量。股票和数字货币的时间和价格也无法同时把握。要把握一方面,就必须放弃另一方面。试图两方面都精确把握,对抗宇宙法则,只会有一个结局,就是损失惨重。

要么把握价格,放弃对时间的把握,这叫做长线投资。长投致胜的秘诀就是不追涨、不杀跌,熊市买入、牛市套现,定期投资、终身持有,做时间的朋友。要么把握时间,放弃对价格的把握,这叫做短线交易。短线致胜的法宝就是降低交易手续费、资金和仓位管理、止损和止赢的绝对纪律性,做人性的敌人。

随机性本质上属于一种不可知的范畴。高德纳用170页的篇幅说明了一个道理,确定性算法产生不了真随机数。计算机世界里的随机数函数,都只能产生伪随机数。伪随机数的前一个数字和后一个数字之间是有关联的,而不是完全独立的,它们只是表现出一种“随机行为”罢了。

高德纳在书中3.5小节指出了“一个重要的哲学和理论问题”,那就是,“确切的讲,我们所谓的「随机行为」是什么意思?”

美国经济学家罗纳德·海纳(Ronald A. Heiner)在发表于1983年9月的《美国经济学评论》(The American Economic Review)上的论文《可预测行为的起源》(The origin of predictable behavior)中提出了著名的“海纳模型”,该模型指出,第一,凡是可预期的行为,必有其模式;第二,完备理性行为,完全没有模式,故而表现的不可预测。高等级生命的理性行为在低等级生命看来,就像是随机性的,毫无目的,因而不可预测。

计算机作为一种没有智能的计算工具,没有一种算法可以产生真正的随机数。这对于密码学是一个致命的问题,很多区块链钱包、公链项目频繁丢币的案例,都源于对不良随机数的使用。同样的,随机数问题对于比特币系统的安全、去中心化的自运行,尤为重要。那么,中本聪所做的哪些设计,使得比特币系统可以在伪随机性的基础上,建构出真正的随机性,至少是在人类这个等级的智慧生命看来就像是真正的随机性、无法识破的呢?

【未完待续】(公众号:刘教链)

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存